Search


#AcceptanceCriteria #jira #PO

不豪...

  • Share this:


#AcceptanceCriteria #jira #PO

不豪小,這是我們一月份開始合作的兩位 PO ,她們所建立的 story, 裡面的 acceptance criteria 是由她們兩位先整理一版出來的。

當然, refinement 時會跟團隊再 tuning 一次,實際如果要轉成自動測試或 BDD 時,也可能要再 tuning 一次。

但我還是覺得極度欣慰跟興奮,能協助並使得 PO 願意且有能力這樣帶領 team 來開發產品,PO 也覺得這是應該、這是正確的事。

我喜歡 jira 的 editor 格式針對 html table 的部分,剛好跟 cucumber gerkhin 的 table 一樣,看起來就是賞心悅目。這也讓我們在做轉換時,可以再省一點 effort 。

by the way, 目前這個模樣,就是 focus 在 "specification by example", 這還不是BDD,也不算是敏捷驗收測試 或 ATDD。這一步相當重要,對 PO 跟 team 來說都相當相當重要。

對 PO 來說,要學著用 example 來表達 scenario 與需求,並提煉出關鍵商業邏輯的 scenarios (所謂的關鍵,就代表每一個 scenario 會跑的程式碼流程都是不一樣的)。而且還要開始學習怎麼描述 what, why, behavior, 而不是 detail 的 how 或 UI 的動線與 spec。

對 team 來說,要開始從 scenarios 上的 domain keywords 去找出關鍵的 domain model/entity ,對不熟悉的詞彙在 refinement 要釐清意義與目的。並檢查 scenario 是否有頭有尾,而不是憑空出現。

對整個 scrum team 來說,則是一個重大的里程碑。各個角色之間,不再各說各話,PO, QE, developer 都在正確的時間點(還沒開始做、還不知道誰做時),釐清需求,並建立共同的目標(驗收標準)。每個人都可以對 acceptance criteria 提出疑問、補充、修正,一旦擁有共識拍版定案,就代表最終產品只要滿足上面的 acceptance criteria 就代表滿足 story 的需求了。

當然,還有個重要的前提時,acceptance criteria 是可以隨時調整跟補充的。大家可能覺得,靠,那不就是隨時在需求異動?是的,擁抱變化,會有需求異動或調整,一定就是希望更能滿足使用者的需求。

但,如果程式滿足了所有的 acceptance criteria 並上線後,仍然有 defect 怎麼辦?

有 defect 就改啊,不然要怎麼辦?只是整個 scrum team 都很清楚的瞭解,這是漏了某個 acceptance criteria, 而不是 bug 。只要把 acceptance criteria 再補上去,並修改程式使其滿足所有的 acceptance criteria 即可。

看到差異了嗎?團隊不會再出現:「這是 common sense 啊!」「參考某某功能修改就好」「你規格沒寫清楚!」「你到底測過哪些東西?」

目標一致,不管需求在什麼時候、不管怎麼變,整個 team 就可以迅速地做出反應,這就是敏捷。


Tags:

About author
我是 Joey Chen,闖蕩江湖的稱號是 91,熱血點火師,專門燃起大家心裡面的熱情與初衷。 目前為 Odd-e Taiwan 的負責人,同時也是 JetBrains 在台灣的培訓夥伴,至今也仍是熱愛學習與享受各種程式語言之美的 programmer。 身為敏捷教練,擅長 Agile、Scrum、LeSS 等敏捷文化與協作框架的落實與導入,如何讓大家 being agile 而不是 doing agile。同時喜歡結合各家所長,例如 Lean, Kanban 等,重點是持續改善、解決問題、端出成果,而不執著於某種特定方法論或框架。 身為技術教練,我也是極限編程(extreme programming)的狂熱者,我擅長用這些技術與工程實踐來提昇產品的品質、團隊的生產力、降低營運風險,因應市場與公司的商業目標,讓團隊能具有高適應與反應能力的基礎建設。例如 實例化需求、ATDD、BDD、TDD、重構、自動化單元測試/整合測試/驗收測試、CI/CD、code review、pair programming、mob-programming 等等。 同時,我也是推崇 極速開發 的 developer,追求從想法到產品程式碼的完成,中間的時間差能趨近於零,也就是劍隨心轉,想到哪,程式碼就長到哪的境界。從想法到實現中間的等待,其實在實務上佔了很大的 context switch 成本,如果能讓這段時間縮到最短,就能比其他人多嘗試更多種解決方案,進而挑選出最剛好的方案。 同時也是技術社群的活躍份子,從 2010 年開始連任九屆的微軟 MVP,兼任 MSDN 論壇板主,也曾經獲得年度 MSDN 文件庫刊登數量世界第一的榮耀。對微軟技術有愛,對 C# 有愛,對自動測試有愛,對重構與設計模式有愛。近年來對 Java, PHP, Python 也充滿濃厚的興趣,曾帶領客戶團隊中不會寫程式的 QA ,一起用 Python 完成超過百個 mobile UI 自動化測試。 擁有超過十年擔任開發團隊 tech leader, trainer, coach 與 mentor 的經驗,進行的企業內部與公開技術培訓課程已超過 100 場,培訓過的開發人員超過 1000 位,擔任研討會與社群活動的講師次數超過 30 次。 同時也是技術書籍的作者與譯者,與朋友合著的書籍包含《ASP.NET MVC 5:網站開發美學》、《ASP.NET MVC 4 網站開發美學》,翻譯的書籍有《單元測試的藝術-第二版》、《敏捷開發實踐》、《進入IT產業必讀的200個 .NET面試決勝題》。 如果想跟我即時互動,歡迎直接私訊或 email 至 [email protected]
請參考:https://tdd.best/about/
View all posts